Aim of the following notebook is to obtain further insights into the correlation between the local atomic environment of an Fe atom and its Orbital Moment Anisotropy (OMA) in L1$_0$ FeNi using Unsupervised machine learning methods.

Note: This notebook is a part of the research article "Effect of chemical disorder on the magnetic anisotropy in L10 FeNi from first principles calculations". For further explanation of the plots below, please refer to the original article.

We define the Orbital Moment Anisotropy (OMA) = $L_{[001]} - L_{[100]}$, where $L_{[001]}$ and $L_{[100]}$ are the total orbital moments when the magnetization lies along the $[001]$ and $[100]$ directions, respectively.

Read all structure files (POSCAR)

Note: For each order parameter ($P_z$), we create 50 different configurations where each configuration is a 2x2x2 supercell of the conventional cubic cell containing 16 Fe and 16 Ni atoms

Read Orbital moment anisotropies of atoms belonging to different structures

Create SOAP descriptor

To obtain further insights into the correlation between the local atomic environment of an Fe atom and its OMA, it is desirable to have a more quantitative way, in the form of well-defined descriptors, to characterize the local atomic environments. For this purpose, we employ the smooth overlap of atomic positions (SOAP) [1] approach as implemented in the DScribe software package [2], which encodes the local atomic environment, up to a specified cutoff distance, into a rotationally invariant rep-resentation, given by the “SOAP vectors”. The length of the vectors generated by SOAP depends, among other quantities, on the number of different chemical species. In our case, we generate SOAP vectors corresponding to local atomic environments including upto first nearest-neighbors (1NN, second nearest-neighbors (2NN), and third nearest-neighbors (3NN) only. In order to visualize the correlation between the local atomic environment of the Fe atoms and their OMA, we reduce the high-dimensional SOAP vectors to two dimensions using the t-distributed stochastic neighbor embedding (t-SNE)technique [3] as implemented in scikit-learn.

  1. Albert P. Bartók, Risi Kondor, and Gábor Csányi. On representing chemical environments. Physical Review B - Condensed Matter and Materials Physics, 87(18):1–16, 2013. doi:10.1103/PhysRevB.87.184115.
  2. L. Himanen, M. O. Jager, E. V. Morooka, F. FedericiCanova, Y. S. Ranawat, D. Z. Gao, P. Rinke, and A. S.Foster, Computer Physics Communications247, 106949(2020).
  3. L. van der Maaten and G. Hinton, Journal of Machine Learning Research9, 2579 (2008).

Get SOAP vectors for 1NN, 2NN, and 3NN

1. T-SNE visualization

To know more on how t-SNE algorithm works, please watch this (https://www.youtube.com/watch?v=RJVL80Gg3lA&t=761s&ab_channel=GoogleTechTalks) excellent talk by Laurens van der Maaten

Get t-SNE reduced SOAP vectors for 1NN, 2NN, and 3NN

Plot the t-SNE visualization of the SOAP vectors

Local atomic environments of Fe atoms in configurations with $P_z$ >= 0.75 (Fig. c)

Let's now trace back few of the local atomic environments resulting in high and low orbital moment anisotropy.

Following illustration was made using inkscape and VESTA

Effect of perplexity

perplexity = 10

perplexity = 20

2. PCA

Get PCA reduced SOAP vectors for 1NN, 2NN, and 3NN

Plot the PCA components 1 and 2 of SOAP vectors